#include "separate_key.h"
#include "delay.h"

void Separate_Key_Init() {
    GPIO_InitTypeDef GPIO_InitStructue;

    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD, ENABLE);

    GPIO_InitStructue.GPIO_Pin = GPIO_Pin_2 | GPIO_Pin_3;
    GPIO_InitStructue.GPIO_Mode = GPIO_Mode_IN_FLOATING;
    GPIO_Init(GPIOD, &GPIO_InitStructue);
	delay_init();

}

u8 Separate_Key_Scan() {
    u8 key_val;

    if (~(GPIO_ReadInputData(GPIOD) & 0x0C)) {
        delay_ms(5);
        if (!GPIO_ReadInputDataBit(GPIOD, GPIO_Pin_2))
            key_val = 1;
        if (!GPIO_ReadInputDataBit(GPIOD, GPIO_Pin_3))
            key_val = 2;
    }
    return key_val;
}
